package cn.signalpha.modules.base.wrapper;

import cn.signalpha.core.mp.support.BaseEntityWrapper;
import cn.signalpha.core.tool.jackson.JsonUtil;
import cn.signalpha.core.tool.utils.BeanUtil;
import cn.signalpha.modules.base.entity.NoticeTemplate;
import cn.signalpha.modules.base.vo.NoticeTemplateVO;
import java.util.Objects;

/**
 * 包装类,返回视图层所需的字段
 *
 * @author signalpha
 */
public class NoticeTemplateWrapper extends BaseEntityWrapper<NoticeTemplate, NoticeTemplateVO>  {

	public static NoticeTemplateWrapper build() {
		return new NoticeTemplateWrapper();
 	}

	@Override
	public NoticeTemplateVO entityVO(NoticeTemplate noticeTemplate) {
		NoticeTemplateVO noticeTemplateVO = Objects.requireNonNull(BeanUtil.copy(noticeTemplate, NoticeTemplateVO.class));
		noticeTemplateVO.setMp(JsonUtil.parse(noticeTemplate.getMpDetail(), NoticeTemplateVO.DetailDTO.class));
		noticeTemplateVO.setMa(JsonUtil.parse(noticeTemplate.getMaDetail(), NoticeTemplateVO.DetailDTO.class));
		noticeTemplateVO.setSms(JsonUtil.parse(noticeTemplate.getSmsDetail(), NoticeTemplateVO.DetailDTO.class));
		return noticeTemplateVO;
	}

}
